//package com.up.stores.config;
//
//import com.up.stores.interceptor.AdminInterceptor;
//import com.up.stores.interceptor.BussInterceptor;
//import com.up.stores.interceptor.LoginInterceptor;
//import org.springframework.context.annotation.Configuration;
//import org.springframework.format.FormatterRegistry;
//import org.springframework.http.converter.HttpMessageConverter;
//import org.springframework.validation.MessageCodesResolver;
//import org.springframework.validation.Validator;
//import org.springframework.web.method.support.HandlerMethodArgumentResolver;
//import org.springframework.web.method.support.HandlerMethodReturnValueHandler;
//import org.springframework.web.servlet.HandlerExceptionResolver;
//import org.springframework.web.servlet.HandlerInterceptor;
//import org.springframework.web.servlet.config.annotation.*;
//
//import java.util.ArrayList;
//import java.util.List;
//
////拦截器的注册
//@Configuration//加载拦截器
//public class LoginInterceptorConfigurer implements WebMvcConfigurer {
//    @Override
//    public void configurePathMatch(PathMatchConfigurer pathMatchConfigurer) {
//
//    }
//
//    @Override
//    public void configureContentNegotiation(ContentNegotiationConfigurer contentNegotiationConfigurer) {
//
//    }
//
//    @Override
//    public void configureAsyncSupport(AsyncSupportConfigurer asyncSupportConfigurer) {
//
//    }
//
//    @Override
//    public void configureDefaultServletHandling(DefaultServletHandlerConfigurer defaultServletHandlerConfigurer) {
//
//    }
//
//    @Override
//    public void addFormatters(FormatterRegistry formatterRegistry) {
//
//    }
//
//    //拦截器配置
//    @Override
//    public void addInterceptors(InterceptorRegistry registry) {
//        // 创建拦截器对象
//        HandlerInterceptor LoginInterceptor = new LoginInterceptor();
//        HandlerInterceptor AdminInterceptor = new AdminInterceptor();
//        HandlerInterceptor BussInterceptor =  new BussInterceptor();
//
//        // 白名单
//        List<String> patterns = new ArrayList<String>();
//        patterns.add("/bootstrap3/**");
//        patterns.add("/css/**");
//        patterns.add("/images/**");
//        patterns.add("/js/**");
//        patterns.add("/web/register.html");
//        patterns.add("/web/login.html");
//        patterns.add("/web/index.html");
//        patterns.add("/web/product.html");
//        patterns.add("/users/reg");
//        patterns.add("/users/login");
//        patterns.add("/districts/**");
//        patterns.add("/products/**");
//        patterns.add("/districts/**");
//        patterns.add("/");
//        patterns.add("/Product/Info");
////        patterns.add("/Product/Info");
//        //下面四个是避免拦截swagger-ui界面
//        patterns.add("/swagger-ui.html/**");
//        patterns.add("/swagger-resources/**");
//        patterns.add("/webjars/**");
//        patterns.add("/v2/**");
//        // 通过注册工具添加拦截器/
//        registry.addInterceptor(LoginInterceptor).addPathPatterns("/**").excludePathPatterns(patterns);
//        registry.addInterceptor(AdminInterceptor).addPathPatterns("/**").excludePathPatterns(patterns);
//        registry.addInterceptor(BussInterceptor).addPathPatterns("/**").excludePathPatterns(patterns);
//
//    }
//
//    @Override
//    public void addResourceHandlers(ResourceHandlerRegistry resourceHandlerRegistry) {
//
//    }
//
//    @Override
//    public void addCorsMappings(CorsRegistry corsRegistry) {
//
//    }
//
//    @Override
//    public void addViewControllers(ViewControllerRegistry viewControllerRegistry) {
//
//    }
//
//    @Override
//    public void configureViewResolvers(ViewResolverRegistry viewResolverRegistry) {
//
//    }
//
//    @Override
//    public void addArgumentResolvers(List<HandlerMethodArgumentResolver> list) {
//
//    }
//
//    @Override
//    public void addReturnValueHandlers(List<HandlerMethodReturnValueHandler> list) {
//
//    }
//
//    @Override
//    public void configureMessageConverters(List<HttpMessageConverter<?>> list) {
//
//    }
//
//    @Override
//    public void extendMessageConverters(List<HttpMessageConverter<?>> list) {
//
//    }
//
//    @Override
//    public void configureHandlerExceptionResolvers(List<HandlerExceptionResolver> list) {
//
//    }
//
//    @Override
//    public void extendHandlerExceptionResolvers(List<HandlerExceptionResolver> list) {
//
//    }
//
//    @Override
//    public Validator getValidator() {
//        return null;
//    }
//
//    @Override
//    public MessageCodesResolver getMessageCodesResolver() {
//        return null;
//    }
//
//}
